var treeData;


$(document).ready(function () {
    searchTree();
});


var setting = {
    view: {
        fontCss: {"font-family":"Microsoft YaHei"},
        selectedMulti: false,
        showIcon:false
    },
    data: {
        simpleData: {
            enable: true
        }
    },
    callback: {
        onClick: zTreeOnClick
    }
};

function searchTree(){
    $.ajax({
        type:"post",
        dataType:"json",
        url: "dataSet/querySjjxxTree",
        success:function(result)
        {
            //所有数据集数据
            treeData=result;
           InitTreeList();
        }
    });
}

//初始化树数据
function InitTreeInfo(){
    arr=[];
    //var	rowobj={};
    // 第一级
    // rowobj.id=999;
    // rowobj.SJJFLMC="标准版本";
    //  rowobj.name="标准版本";
    //  arr.push(rowobj);
    $.each(treeData,function(index,treeObj){

        var tempJson={};
        tempJson=treeObj;
        if(treeObj.FLJB=='3'){
            return true;
        }
       // if(treeObj.FLJB=='1') {
           // tempJson["pId"]='999';
       // }
        if(treeObj.FLJB=='2'){
            tempJson["pId"]=treeObj.YJLBDM;
        }
        tempJson.id=treeObj.SJJFLDM;
        tempJson.name=treeObj.SJJFLMC;
        arr.push(tempJson);
    });
    return arr;
}

/**
 * 建立节点树列表
 * @returns
 */
function InitTreeList(){
   var zTreeNodes= InitTreeInfo();
    //初始化树
    $.fn.zTree.init($("#dataTree"), setting, zTreeNodes);

    var treeObj = $.fn.zTree.getZTreeObj("dataTree");
    var nodes = treeObj.getNodes();

     if (nodes.length > 0) {
        var yjTreeNode= nodes[0].children;
        if(undefined!=yjTreeNode){
            //默认展开一级第一个节点
            treeObj.expandNode(yjTreeNode[0], true, false, true);
            //默认选中一级第一个节点
            treeObj.selectNode(yjTreeNode[0]);
            //yjTreeNode[0]触发单击事件
            treeObj.setting.callback.onClick(null, treeObj.setting.treeId,yjTreeNode[0]);
        }else{
            //默认展开第一个节点
            treeObj.expandNode(nodes[0], true, false, true);
            //默认选中第一个节点
            treeObj.selectNode(nodes[0]);
            treeObj.setting.callback.onClick(null, treeObj.setting.treeId,nodes[0]);
        }
     }
}


//树节点单击事件
function  zTreeOnClick(event, treeId, treeNode){
    //先清空
    $("#sjjfldm").val('');
    $("#yjlbdm").val('');

   var fljb= treeNode.FLJB;
   if("2"==fljb){
       var sjjfldm=treeNode.SJJFLDM;
       $("#sjjfldm").val(sjjfldm);
   }else if("1"==fljb){
       var yjlbdm=treeNode.SJJFLDM;
       $("#yjlbdm").val(yjlbdm);
   }
    initSjjxxTable();
}

//点击树节点 初始化表格
function initSjjxxTable(){
    $('#sjjListTable').bootstrapTable('destroy');
    $('#sjjListTable').bootstrapTable({
        url: 'dataSet/queryDataSet',   //请求后台的URL（*）
        method: 'POST',      //请求方式（*）
        contentType:"application/x-www-form-urlencoded; charset=UTF-8",
        dataType: 'json',
        onClickRow: function (row, element, field) {
            $('.info').removeClass('info');//去除之前选中的行的，选中样式
            $(element).addClass('info');//添加当前选中的 success样式用于区别
        },
        striped: true,      //是否显示行间隔色
        cache: true,      //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
        pagination: true,     //是否显示分页（*）
        sortable: true,      //是否启用排序
        sortOrder: "asc",     //排序方式
        queryParams: function(param) {
            var temp = {
                limit:param.limit,
                offset:param.offset,
                sjjmc:$('#sjjmcValue').val(),
                sjjfldm: $("#sjjfldm").val(),
                yjlbdm:$("#yjlbdm").val()
            };
            return temp;
        },//传递参数（*）
        sidePagination: "server",   //分页方式：client客户端分页，server服务端分页（*）
        pageNumber:1,      //初始化加载第一页，默认第一页
        pageSize: 10,      //每页的记录行数（*）
        pageList: [10, 20, 50],  //可供选择的每页的行数（*）
        search: false,      //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
        strictSearch: false,
        showColumns: false,     //是否显示所有的列
        showRefresh: false,     //是否显示刷新按钮
        height: $(document).height()-92,      //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
        uniqueId: "SJJDM",      //每一行的唯一标识，一般为主键列
        sortName:"SJJDM",
        showToggle:false,     //是否显示详细视图和列表视图的切换按钮
        dataLocale:"zh-CN",
        columns: [
            {
                field: 'ck',
                align: 'center',
                valign:'middle',
                width: '60',
                checkbox: true
            },
            {
                field: 'SJJMC',
                title: '数据集名称',
                align: 'center',
                valign:'middle'
            }, {
                field: 'SJJDM',
                title: '数据集代码',
                align: 'center',
                valign:"center"
            },{
                field: 'SJJFLMC',
                title: '数据集分类',
                align: 'center',
                valign:'middle'
            },{
                field: 'SJKBM',
                title: '数据库表名',
                align: 'center',
                valign:'middle'
            },{
                field: 'BBH',
                title: '版本号',
                align: 'center',
                valign:'middle'
            },{
                field: 'operate',
                title: '操作',
                align: 'center',
                valign:'middle',
                events:operateEvents,
                formatter:addFunctionAlty
            }]
    });
}

function addFunctionAlty(value, row, index){

    var htmlStr = '';
    htmlStr += '<div>' +
        '<a class="blue" href="#"  id ="sjyTable"  >' +
        '<i class="btn-view-wn" style="font-size: 125%" title="数据元目录"></i>数据元目录</a>' +
        '<a class="blue" href="#"  id ="tableEditor"  >' +
        '<i class="btn-eidt-wn" style="font-size: 125%" title="修改"></i></a>' +
        '<a class="red" href="#" id ="tableDelete"  >' +
        '<i class="btn-del-wn" style="font-size: 125%" title="删除"></i></a></div>'
    return htmlStr;
}

window.operateEvents = {
    'click #sjyTable': function (e, value, row, index) {
        LayerWn.openDialog('数据元目录', 'psms-sjjgl-sjyml.html?sjjdm='+row.SJJDM, 1030, 600);
    },
    'click #tableEditor': function (e, value, row, index) {
        LayerWn.openDialog('数据集信息', 'psms-sjjgl-add.html?sjjdm='+row.SJJDM+'&bbh='+row.BBH, 1030, 450);
    },
    'click #tableDelete': function (e, value, row, index) {
        LayerWn.showConfirm("确定要删除吗？", function () {
            $.ajax({
                type: "GET",
                contentType: 'application/json',
                dataType: "json",
                data: {sjjdm:row.SJJDM,bbh:row.BBH},
                url: "dataSet/deleteDataSet",
                success: function (jsonData) {
                    if (jsonData.code == 200) {
                        LayerWn.showSucAlert("删除成功");
                        initSjjxxTable();
                    }else {
                        LayerWn.showFailAlert('服务器异常,请联系管理员');
                    }
                }
            });
        });
    }
};

//新增
function add(){
    LayerWn.openDialog('新增数据集', 'psms-sjjgl-add.html', 1030, 450);
}
//发布
function publish(){
    LayerWn.openDialog('发布数据集', 'psms-sjjgl-publish.html', 300,250);
}

//导出EXCEL
function exportWord() {
    var selectedRows = $("#sjjListTable").bootstrapTable('getSelections');
    if (selectedRows.length <= 0) {
        LayerWn.showAlert("请选中至少一行！");
        return;
    }
    var sjjdms = [];
    $.each(selectedRows, function(index, row) {
        sjjdms.push(row.SJJDM);
    });

    LayerWn.showConfirm("导出数据集", function (index) {

        var token = localStorage.getItem("token");
        window.location.href = "dataSet/exportWord?sjjdms=" + sjjdms + "&token=" + token;
        LayerWn.closeLayer(index);

    });
}

